草庐IT

HTTP、HTTPS、共享 SSL 和 SEO

全部标签

ruby-on-rails - 让 Rails URL 助手自动输出 https url

我正在开发一个大量混合使用http和https的网站-使链接使用正确的路由协议(protocol)的最佳/最简单方法是什么-可以在路由文件中指定吗?假设我在Rails3中有以下路线。match"/test"=>"test#index",:as=>:test,:constraints=>{:protocol=>'https'}如果我在http页面上,并且我使用test_url(),它会输出http://domain.com/test.我要https://domain.com/test相反。我知道我可以使用test_url(:secure=>true),但那是重复逻辑。我知道我可以http

ruby - 如何在我的 .rb 文件中共享变量?

我有几个.rb文件,我想在所有文件中使用相同的变量。假设变量test_variable="test"应该可以从我所有的.rb访问文件。我怎样才能做到这一点?我创建了settings.rb文件test_variable="test"然后使用require'settings'在另一个.rb文件,但没有用。我想使用require不是load.我试图通过在变量名称前加上$来使变量成为全局变量,但我仍然得到undefinedlocalvariableormethod'test_variable'formain:Object(NameError). 最佳答案

ruby-on-rails - Rails 应用程序:Solr 抛出 RSolr::Error::Http - 执行搜索时未找到 404

非常迷茫,因为我没有对我的搜索进行任何更改,该搜索一直有效,但不知何故我休息了。作为Rails的新手,错误输出没有给我足够的细节来进行调试。下面的相关代码-询问您是否还想查看其他内容。home.html.slim(带有搜索表单的摘录)=form_tagsearch_venues_path,method::get,id:'search'do|f|.search-fields.span16p=text_field_tag:q,'',placeholder:"Searchforcoffee,hotel,etc",class:'span7search-field'p=text_field_ta

ruby-on-rails - OpenSSL::SSL::SSLError: SSL_connect SYSCALL returned=5 errno=0 state=SSLv3 read server hello A

下面的代码会产生以下错误:OpenSSL::SSL::SSLError:SSL_connectSYSCALLreturned=5errno=0state=SSLv3readserverhelloArequire'net/https'uri=URI.parse("https://.com")http=Net::HTTP.new(uri.host,uri.port)http.use_ssl=truehttp.ssl_version='SSLv3'http.get(uri.request_uri)知道为什么吗?我尝试了所有其他问题中提到的所有内容,仍然没有运气。Ruby1.9.3p484(2

ruby-on-rails - rspec 共享示例与共享上下文

shared_examples和shared_context之间的真正区别是什么?我的观察:我可以使用两者测试相同的东西(即使用shared_examples或shared_context)但是如果我使用后面的测试,我的一些其他测试会失败。观察#1:我比较了shared_examples和shared_context根据https://www.relishapp.com/上的文档语法差异是:shared_context用于定义一个block,该block将通过隐式匹配元数据在示例组的上下文中进行评估示例:shared_context"sharedstuff",:a=>:bdo...en

ruby - 如何在 OpenURI 中指定 "http request header"

我正在尝试使用Ruby的OpenURIgem调用URL,但是它需要我在其HTTP请求header中传递某些值。知道怎么做吗? 最佳答案 根据thedocumentation,您可以将httpheader的哈希值作为第二个参数传递给open:open("http://www.ruby-lang.org/en/","User-Agent"=>"Ruby/#{RUBY_VERSION}","From"=>"foo@bar.invalid","Referer"=>"http://www.ruby-lang.org/"){|f|#...}

ruby-on-rails - 如果不存在,请将 https) 添加到 URL?

我在我的模型中使用这个正则表达式来验证用户提交的URL。我不想强制用户输入http部分,但如果它不存在,我想自己添加。validates:url,:format=>{:with=>/^((http|https):\/\/)?[a-z0-9]+([-.]{1}[a-z0-9]+).[a-z]{2,5}(:[0-9]{1,5})?(\/.)?$/ix,:message=>"isnotvalid"}知道我该怎么做吗?我对验证和正则表达式的经验很少.. 最佳答案 如果它不存在,使用前置过滤器添加它:before_validation:sma

ruby - 如何让 Sinatra 通过 HTTPS/SSL 工作?

正如标题所说,Google没有提供任何与此相关的有用信息。如何为Sinatra应用设置和配置HTTPS/SSL?如何创建HTTPS路由?我以前从未在我的应用程序中使用过HTTPS,也没有调整Rack或其他任何东西的经验,所以我很感谢详细的答案。 最佳答案 这似乎适合我:require'sinatra/base'require'webrick'require'webrick/https'require'openssl'CERT_PATH='/opt/myCA/server/'webrick_options={:Port=>8443,:

ruby - 如何在 ruby​​ 中通过 SSL 调用 HTTP POST 方法?

所以这是使用curl的请求:curl-XPOST-Hcontent-type:application/json-d"{\"credentials\":{\"username\":\"username\",\"key\":\"key\"}}"https://auth.api.rackspacecloud.com/v1.1/auth我一直在尝试使用ruby​​发出同样的请求,但我似乎无法让它工作。我也尝试了几个库,但我无法让它工作。这是我到目前为止所拥有的:uri=URI.parse("https://auth.api.rackspacecloud.com")http=Net::HTTP.

Ruby - net/http - 跟随重定向

我有一个URL,我正在使用HTTPGET将查询传递到页面。最新版本(在net/http中)发生的情况是脚本不会超出302响应范围。我尝试了几种不同的解决方案;HTTPClient、net/http、Rest-Client、Patron...我需要一种方法来继续到最后一页,以便验证该页面html上的属性标记。重定向是由于移动用户代理点击重定向到移动View的页面,因此header中的移动用户代理。这是我今天的代码:require'uri'require'net/http'classCheck_Get_Pagedefmore_httpurl=URI.parse('my_url')req,d